/* clearfix hack */

.clearfix:before, .clearfix:after {
    content: " ";
    /* 1 */
    display: table;
    /* 2 */
}

.clearfix:after {
    clear: both;
}


body {
    font-family: sans-serif;
    margin: 0;
    padding: 1em;
    word-break: break-word;
}

.subtitle {
    color: #999;
}

div#container {
    margin: 0 auto 0 auto;
    max-width: 40em;
    padding: 0em 1.5em 1.3em 1.5em;
}

#file-dropper {
    width: 50%;
    min-height: 11.57895em;
    margin: 50px auto;
    padding: 75px 20px 20px 20px;
    text-align: center;
    border: dashed 3px #C1C3C5;
}

#file-dropper.hover {
    border: 10px dashed #333;
}

.upload-text {
    font-size: 32px;
    margin-bottom: 20px;
    font-weight: 400;
    color: #b1b3b7;
}

.button-container {
    margin: 15px 0;
}

.button {
    border-radius: 0;
    background-color: #FFF;
    border: thin solid #ddd;
    padding: 6px;
    color: #666;
}

.button:disabled {
    background-color: #bbb;
}

.input-preview, .output-preview {
    width: 50%;
    margin: 0 auto;
}

#input-img, #output-img {
    width: 100%;
}

section.range-slider, .single-slider {
    position: relative;
    width: 200px;
    height: 35px;
    text-align: center;
}

section.range-slider input {
    pointer-events: none;
    position: absolute;
    overflow: hidden;
    left: 0;
    top: 15px;
    width: 200px;
    outline: none;
    height: 23px;
    margin: 0;
    padding: 0;
}

section.range-slider input::-webkit-slider-thumb {
    pointer-events: all;
    position: relative;
    z-index: 1;
    outline: 0;
}

section.range-slider input::-moz-range-thumb {
    pointer-events: all;
    position: relative;
    z-index: 10;
    -moz-appearance: none;
    width: 9px;
}

section.range-slider input::-moz-range-track {
    position: relative;
    z-index: -1;
    background-color: rgba(0, 0, 0, 1);
    border: 0;
}

section.range-slider input:last-of-type::-moz-range-track {
    -moz-appearance: none;
    background: none transparent;
    border: 0;
}

section.range-slider input[type=range]::-moz-focus-outer {
    border: 0;
}

#control-panel {
    width: 50%;
    margin: 20px auto;
    padding-left: 18%;
}

.control {
    margin: 10px;
}

input[type=range] {
    -webkit-appearance: none;
    margin: 10px 0;
    width: 100%;
}

input[type=range]:focus {
    outline: none;
}

input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 2px;
    cursor: pointer;
    animate: 0.2s;
    box-shadow: 0px 0px 0px #000000;
    background: #666;
    border-radius: 1px;
    border: 0px solid #000000;
}

input[type=range]::-webkit-slider-thumb {
    box-shadow: 0px 0px 0px #000000;
    border: 1px solid #666;
    height: 18px;
    width: 18px;
    border-radius: 25px;
    background: #fff;
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -7px;
}

input[type=range]:focus::-webkit-slider-runnable-track {
    background: #999;
}

input[type=range]::-moz-range-track {
    width: 100%;
    height: 2px;
    cursor: pointer;
    animate: 0.2s;
    box-shadow: 0px 0px 0px #000000;
    background: #666;
    border-radius: 1px;
    border: 0px solid #000000;
}

input[type=range]::-moz-range-thumb {
    box-shadow: 0px 0px 0px #000000;
    border: 1px solid #666;
    height: 18px;
    width: 18px;
    border-radius: 25px;
    background: #fff;
    cursor: pointer;
}

input[type=range]::-ms-track {
    width: 100%;
    height: 2px;
    cursor: pointer;
    animate: 0.2s;
    background: transparent;
    border-color: transparent;
    color: transparent;
}

input[type=range]::-ms-fill-lower {
    background: #666;
    border: 0px solid #000000;
    border-radius: 2px;
    box-shadow: 0px 0px 0px #000000;
}

input[type=range]::-ms-fill-upper {
    background: #666;
    border: 0px solid #000000;
    border-radius: 2px;
    box-shadow: 0px 0px 0px #000000;
}

input[type=range]::-ms-thumb {
    box-shadow: 0px 0px 0px #000000;
    border: 1px solid #666;
    height: 18px;
    width: 18px;
    border-radius: 25px;
    background: #fff;
    cursor: pointer;
}

input[type=range]:focus::-ms-fill-lower {
    background: #bbb;
}

input[type=range]:focus::-ms-fill-upper {
    background: #bbb;
}

.file-stats {
    margin-bottom: 3px;
    text-align: center;
    color: #999;
}

.indicator {
    height: 10px;
    width: 10px;
    border-radius: 10px;
    display: inline-block;
    margin-right: 5px;
}

.yellow {
    background-color: #ffcc00;
}

.green {
    background-color: #20a23d;
}

#output {
    border: thin solid #bbb;
    padding: 10px;
    margin-top: 5px;
}

.compress-text {
    font-size: 30px;
    font-weight: 600;
    color: #aaa;
    text-align: center;
    margin: 20px 0px;
}

.refresh-container {
    display: block;
    text-align: center;
    margin: 20px 0px;
}

#footer-content{
  text-align: center;
  color: #bbb;
  font-size: 14px;
  margin: 1px 0px;
}
#footer-content a{
  color: #666;
  text-decoration: none;
}
